草庐IT

K8S 部署Prometheus

全部标签

go - Go 中 Prometheus 的多个端点

我目前正在开发一个由Prometheus监控的Go(golang)编写的程序。现在程序应该提供两个端点/metrics和/service。当Prometheus在/metrics上抓取时,它应该公开自己的指标(例如发出的请求、请求延迟等),当在/service上抓取时,它应该查询一个API,从那里获取指标并将它们公开给Prometheus。对于第一部分,我创建了例如一个计数器通过requestCount:=kitprometheus.NewCounterFrom(stdprometheus.CounterOpts{Namespace:"SERVICE",Subsystem:"servi

go - 如何在 k8s 集群中使用 heapster 获取文件系统/使用情况

如何在k8s集群中使用heapster获取“文件系统/使用情况”?我使用heapstermonitork8s,但是我无法获取节点磁盘使用情况。有人帮忙吗? 最佳答案 curl-L10.233.8.12:/api/v1/model/nodes/node1/metrics/filesystem/usage?labels="resource_id:/"ws.Route(ws.GET("/nodes/{node-name}/metrics/{metric-name:*}").至(指标.InstrumentRouteFunc(“nodeMet

docker - 当部署到 Docker 时,在 Golang 中实现的 Apache Kafka 消费者会出现 panic

这是我尝试实现一个简单的微服务,它应该从kafka服务器读取消息并通过HTTP发送它。当我从终端运行它时它工作正常,但是当部署到docker上时它会出现panicpanic:runtimeerror:invalidmemoryaddressornilpointerdereference[signalSIGSEGV:segmentationviolationcode=0x1addr=0x40pc=0x7b6345]goroutine12[running]:main.kafkaRoutine.func1(0xc420174060,0x0,0x0)/go/src/github.com/dea

go - Prometheus 指标未使用 Prometheus Go 客户端显示

我正在使用prometheusgolang客户端。代码片段如下。同样的构建工作正常。问题是只显示go指标。xyz_*指标缺失。我将initMetrics()作为main()函数中的第一件事。//Declaringprometheusmetriccountersvar(metric_prefix="xyz_"xyzAPICallsCounter=prometheus.NewCounterVec(prometheus.CounterOpts{Name:metric_prefix+"api_calls_total",Help:"Numberofcallstoxyzendpoint",},[]

go - gcloud 自动重新部署 Golang 应用

我有一个在GoogleCloudAppEngine上运行的Golang应用程序,我可以使用“gcloudappdeploy”手动更新它,但我不知道如何安排自动重新部署。我假设我必须使用cron.yaml,但后来我对使用什么url感到困惑。基本上它只是一个Web应用程序,其中包含一个包含不断变化的内容的主index.html页面,我想安排自动重新部署...我该怎么做? 最佳答案 如果您想在代码更改时自动重新部署您的应用程序,您需要所谓的CI/CD(持续集成/部署)。CI所做的是,对于每个新提交到您的存储库,检查新代码并运行测试脚本。如

go - Prometheus 使用计数器对非静态数据进行计数

我正在尝试计算唯一URI的数量并记录它们的数量。这些URI会随着时间的推移而变化,同一类型的URI可能有多个。例如,可以有多个“/foo”和“/bar”,并且可以进来一个新的URI——比方说“pooh”——我必须将它们添加到计数器并继续计数。在这种情况下,我不能使用常量标签。例如,如果我要按方法和/或状态代码计算http请求的数量,我可以这样做:httpRequestInfo:=prometheus.NewCounterVec(prometheus.CounterOpts{Name:"http_requests_sum",ConstLabels:prometheus.Labels{"c

go - Go语言Vs代码如何调试部署在本地服务器上的RestApi

Go语言Vs代码如何调试部署在本地服务器上的RestApi。我已经浏览了delve文档并进行了设置。我有一个本地服务器,使用java客户端我试图获得响应。本地主机服务器正在Debug模式下运行,但流程不会在断点处停止。代码是Go语言,我使用的是VSCodeIDE。 最佳答案 希望您已为VSCode正确设置Go语言。否则只需检查this链接。注意:您必须通过VSCode运行您的GoRestApi 关于go-Go语言Vs代码如何调试部署在本地服务器上的RestApi,我们在StackOver

go - Heroku Golang 部署

这是我的工作空间$GOPATH/src/github.com/ulukma/weder-deploy我有程序文件web:weder-deploy还有Godeps文件夹。然后我成功地将我的应用程序推送到Heroku。但是当我尝试打开它时出现错误2018-09-06T22:49:31.839903+00:00heroku[router]:at=errorcode=H14desc="Nowebprocessesrunning"method=GETpath="/"host=weaderapp.herokuapp.comrequest_id=64fd68c8-3012-4bc6-9a00-eed

无法从外部主机访问 Docker 部署的镜像

所以我有一个Go应用程序,我正在使用Ansible和Jenkins管道作为Docker镜像部署到EC2实例。我有一个图像,我可以使用Postman使用IP地址和端口号8080从主机外部访问它。当我部署新图像时,我无法使用IP地址和端口号获得响应。当我ssh进入服务器时,我可以使用localhost和端口号到达端点。如果我停止那个图像并开始第一个图像,我就可以再次到达它。这些图像之间可能存在哪些差异,导致无法再通过IP地址访问端点?我的Docker组合文件:version:'2'services:project-1:image:...volumes:-/var/log:/var/logn

【k8s面试】超详细kubernetes面试题总结,面试必问!(附200道K8s/Docker面试真题+答案详解)

今年的面试差不多结束了,前两天跟一个大佬交流,他直言,K8s就是未来的Linux操作系统。操作系统一般有存储、网络、进程管理、进程调度、系统调用API等功能。类似的,K8s也提供了云原生下的存储、调度、网络、声明式API等功能,还提供了很多运维相关的能力,如备份、扩缩容、负载均衡等。可以说,K8s在云原生环境下,已经承担了一个操作系统的绝大部分功能!更是已经成为云计算领域中平台层当仁不让的事实标准!在这个企业全面追逐云原生的时代,相信K8s/Docker很快就会成为每个技术从业者必备的基础知识。另外,K8s和Docker也让DevOps这一角色更加清晰,对很多中小企业中,需要开发+运维一把抓的